package com.jqq.set_;

import java.util.HashSet;
import java.util.Iterator;
import java.util.Set;

/**
 * @author 姬倩倩
 * @version 1.0
 */
public class SetMethod {
    @SuppressWarnings({"all"})
    public static void main(String[] args) {
        //1.以Set接口的实现类 HashSet来讲解Set接口的方法
        //2.set接口的实现类的对象(Set接口对象)，不能存放重复的元素，可以添加
        //null,但只能添加一个
        //3.set接口对象存放数据是无序的(即添加的顺序和取出的顺序不一致)
        //4.元素录入后，虽然顺序不对，但是位置固定了，所以对于同一个set
        //取出的元素的顺序是固定的
        Set set = new HashSet();
        set.add("john");
        set.add("lucy");
        set.add("john");
        set.add("jack");
        set.add(null);
        set.add(null);
//        set.add("jqq");
        System.out.println("set=" + set);

        //遍历该集合
        //使用迭代器
        Iterator iterator = set.iterator();
        while (iterator.hasNext()) {
            Object obj =  iterator.next();
            System.out.println("obj=" + obj);
        }
        //使用增强for
        for (Object o :set) {
            System.out.println("o=" + o);
        }
        //set接口对象不能通过索引对象来获取

        //删除
        set.remove(null);
        System.out.println(set);
    }
}
